BOKOSCU

ZSH/Bash alias

Автоматически соберёт и опубликует image на приватный registry docker.
// Ранее WHC и другие боты дискорд работали и раскатывались именно по этому способу

dpublick() {
    local name=$1
    local address="10.0.1.20:5000/$name"
    
    sudo docker build -t $address .
    sudo docker push $address
}

Для проектов GitLab в которых есть множества различных submodule было куда проще скачать и запушить их рекурсивно при обновлении

alias git-pull-all='git pull && git submodule update --init --recursive && git submodule foreach --recursive git pull origin $(git rev-parse --abbrev-ref HEAD)'

alias git-push-all='git submodule foreach --recursive git push && git push'

Алиас pgit был нужен т.к. для локальной разработки использовался git через прокси. Прописывать каждый раз proxychains git задача та ещё заурядная, pgit стал моим спасением

alias pgit='proxychains git'

Почти все VDS/VPS сервера дают доступ по root + пароль. Схема не безопасно, но обезапасить её проще всего включением входа по ключу. Этот скрипт автоматически включает вход по ключу ~/.ssh/id_rsa.pub (замени для себя) и перезагружает сервер. Первая команда выполняемая мной на новосозданном сервере VDS/VPS

function ssh-servergen() {
  if [ "$#" -ne 1 ]; then
    echo "Использование: ssh-servergen <пользователь@сервер>"
    return 1
  fi

  SERVER=$1
  KEY_PATH=~/.ssh/id_rsa.pub

  echo "Копируем ключ на сервер..."
  ssh-copy-id -i "$KEY_PATH" "$SERVER"
  if [ $? -ne 0 ]; then
    echo "Не удалось скопировать ключ. Проверьте параметры."
    return 1
  fi

  echo "Отключаем вход по паролю..."
  ssh "$SERVER" << EOF
    sed -i 's/^#\\?PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
    sed -i 's/^#\\?ChallengeResponseAuthentication.*/ChallengeResponseAuthentication no/' /etc/ssh/sshd_config
    sed -i '/^#\\?PermitRootLogin/s/^.*$/PermitRootLogin without-password/' /etc/ssh/sshd_config
    sed -i '/^PermitRootLogin/s/^[^#].*$/PermitRootLogin without-password/' /etc/ssh/sshd_config
    systemctl restart sshd
EOF
  if [ $? -ne 0 ]; then
    echo "Не удалось отключить вход по паролю."
    return 1
  fi

  echo "Перезагружаем сервер..."
  ssh "$SERVER" reboot
  if [ $? -ne 0 ]; then
    echo "Не удалось перезагрузить сервер."
    return 1
  fi

  echo "Скрипт выполнен успешно."
}